package com.service;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.IService;
import com.entity.UserEntity;
import com.utils.PageUtils;


/**
 * 系统用户服务接口
 *
 * 该接口定义了与系统用户相关的业务操作，包括分页查询用户数据、根据条件查询用户数据等。
 * 通过实现该接口，可以实现用户信息的管理，包括用户信息的增、删、改、查等操作。
 *
 * @author team10
 */
public interface UserService extends IService<UserEntity> {

	/**
	 * 分页查询用户数据
	 *
	 * @param params 查询参数，包括分页信息
	 * @return 返回分页结果，包含查询到的用户数据
	 */
	PageUtils queryPage(Map<String, Object> params);

	/**
	 * 根据条件查询用户列表
	 *
	 * @param wrapper 条件构造器，用于构造查询条件
	 * @return 返回查询到的用户数据列表
	 */
	List<UserEntity> selectListView(Wrapper<UserEntity> wrapper);

	/**
	 * 分页查询用户数据，支持自定义查询条件
	 *
	 * @param params 查询参数，包括分页信息
	 * @param wrapper 条件构造器，用于构造查询条件
	 * @return 返回分页结果，包含查询到的用户数据
	 */
	PageUtils queryPage(Map<String, Object> params, Wrapper<UserEntity> wrapper);
}
